A Metamodeling Approach to Pattern-Based Model Refactoring
نویسندگان
چکیده
class implemented_by Image Display (applying the Bridge pattern) displayed_on Display ImageImpl1 Figure 1. An example of pattern-based model refactoring. ConcreteImpB ConcreteImpA Implementor RefinedAbstraction Abstraction implemented_by Figure 2. A diagram of the Bridge pattern. tion of the UML designs representing solutions of the pattern Transformation specification: a specification of problem-to-solution transformations Figure 3 presents an overview of our metamodeling approach to specifying transformations. The M2 level is an extension of the UML metamodel level that supports the definition of a transformation language. The M1 level is an extension of the UML model level that supports representation of model transformations. A model transformation at the M1 level transforms a source model to a target model. The M1 model transformations are characterized by a transformation specification at the M2 level that includes a pattern problem specification for the source models and a pattern solution specification for the target models. We can also view the transformation specification at M2 as defining a transformation language for the pattern, and the transformations at M1 as statements of the language. A UML model that conforms to a pattern problem or solution specification is said to be an instance of the specification. Similarly, a model transformation that conforms to a transformation specification is said to be an instance of the transformation specification. Pattern problem and pattern solution specifications characterize a subset of UML models characterized by the UML metamodel, so we can view the specifications as defining UML metamodel specializations. UML tool developers can embed patterns by appropriately specializing their representations of the UML metamodel. Figure 4 illustrates how we can represent the pattern solution specification for a simplified form of the Observer pattern as a specialized form of the UML metamodel. The Observer pattern specification characterizes UML class diagrams that model structural aspects of Observer pattern solutions. Each target class diagram characterized by the spec5 4 I E E E S O F T W A R E h t t p : / / c o m p u t e r. o r g / s o f t w a r e Pattern problem specification Transformation specification Pattern solution specification Source model Target model T1 Model transformation Instance-of dependency Instance-of dependency Instance-of dependency M2
منابع مشابه
Patterns as Precise Characterizations of Designs
This paper presents a metamodeling approach to precisely expressing pattern properties. In this work, a pattern is treated as a characterization of a family of solutions, where the solutions are expressed as UML (Unified Modeling Language) design models. This treatment of patterns paves the way for the development of pattern-based model refactoring techniques.
متن کاملA Generic Visual Language Technique for DSVL Model Refactoring to Patterns
As the popularity of domain-specific visual languages (DSVLs) grows, many concerns have arisen regarding quality assurance and evolvability of their designs (metamodels) as well as their model instances. We address some aspects of automated DSVL model instance modification for quality improvement based on refactoring specifications. We propose a graph transformation based visual language approa...
متن کاملM-REFACTOR: A New Approach and Tool for Model Refactoring
We present a new approach and tool (MRefactor) for model refactoring; we propose an extension of the UML metamodel for the assisted Model Driven Refactoring (MDR). Based on model qualities metrics and design flaws, we propose a new demarche allowing the automated detection of model refactoring opportunities and the assisted model restructuration. Precisely we focus on class and sequence diagrams.
متن کاملA Metamodeling Approach to Model Refactoring
The Model Driven Architecture (MDA) initiative formulated by the Object Management Group (OMG) provides a framework for a set of standards supporting a model-centric style of development. MDA is intended to support the use of models as the primary artifacts of software development. It represents an approach for delivering software-intensive systems through the transformation of models – primari...
متن کاملImproving MDA-based Process Quality through Refactoring Patterns
The Model Driven Architecture (MDA) is an initiative proposed by the Object Management Group (OMG) that advocates modeling system from computation independent, platform independent, platform specific and implementation specific models. MDA is also based on the concepts of metamodel, automatic transformation and traceability. A crucial part of the evolution from abstract models to executable com...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- IEEE Software
دوره 20 شماره
صفحات -
تاریخ انتشار 2003